package models

// SysCache 系统缓存
type SysCache struct {
	Id            *int           `json:"id" gorm:"column:id;primary_key;auto_increment"`                     //ID
	CreateTime    *LocalTime     `json:"createTime" gorm:"column:create_time;type:timestamp;autoCreateTime"` //创建时间
	UpdateTime    *LocalTime     `json:"updateTime" gorm:"column:update_time;type:datetime;autoUpdateTime"`  //更新时间
	CreateBy      *int           `json:"createBy" gorm:"column:create_by;type:int"`                          //创建人
	DelBy         *int           `json:"delBy" gorm:"column:del_by;type:int"`                                //删除人
	Del           *int           `json:"del" gorm:"column:del;type:int"`                                     //是否删除
	Remark        *string        `json:"remark" gorm:"column:remark;type:varchar(20)"`                       //备注
	CacheKey      *string        `json:"cacheKey" gorm:"column:cache_key;type:varchar(50)"`                  //缓存Key
	SysCacheLists []SysCacheList `json:"sysCacheLists"`
}

// TableName 设置表名称
func (models *SysCache) TableName() string {
	return "sys_cache"
}

// SysCacheList 系统缓存列表
type SysCacheList struct {
	Id         *int    `json:"id" gorm:"primary_key;auto_increment"`
	KeyName    *string `json:"keyName" gorm:"unique"`
	Value      *string `json:"value" gorm:"unique"`
	SysCacheID *int    `json:"sysCacheID"`
}

func (models *SysCacheList) TableName() string {
	return "sys_cache_list"
}

// 初始化
func init() {
	//将模型添加到注册容器中
	registerContainer = append(registerContainer, &SysCache{}, &SysCacheList{})
}
